import {
	getFormDataParams
} from '@/utils/oss/getSignature.js'

/**
 * 2. 图片上传到oss
 */
export const uploadOss = async ({
	filePathFore,
	filePath
}) => {
	return new Promise(async (resolve) => {
		const res = await getFormDataParams() //请求后台获取oss签名信息
		//获取文件扩展名，根据后台返回的值而取
		let fileType = filePath.substring(filePath.lastIndexOf('.')) || '.jpg' //获取图片类型后缀 .jpg .png
		// 获取时间格式
		const time = uni.$u.timeFormat(new Date().getTime(), 'yyyymmddhhMMss')
		// const userId=uni.getStorageSync('userInfo').stu_id
		let key =
			`${filePathFore}${time}${fileType}` //那么我们上传到oss上，路径就是 filePathFore/20211112.png ,filePathFore 由后端接口中获取
		const host = 'https://jgdrxt.oss-cn-shanghai.aliyuncs.com'
		uni.showLoading({
			title: "loading",
			mask: true
		})
		uni.uploadFile({
			url: host,
			filePath: filePath,
			name: 'file', // 必须填file。
			formData: {
				key, //文件名
				policy: res.policy, //后台获取超时时间
				OSSAccessKeyId: res.OSSAccessKeyId, //后台获取临时ID
				signature: res.signature, //后台获取签名
				'x-oss-security-token': res['x-oss-security-token'], // 使用STS签名时必传。
				success_action_status: '200', //让服务端返回200,不然，默认会返回204
			},
			success: (res) => {
				if (res.statusCode === 200) {
					uni.showToast({
						title:'上传成功'
					})
					uni.hideLoading();
					resolve(key) //上传成功后，将我们所自定义的key（文件路径名）返回出去
				}
			},
			fail: err => {
				console.log(err);
			}
		})

		// }
	})



}